Adaptation of presentation speed

ABSTRACT

Systems and methods are disclosed for adaptation of presentation speed for content presentation (e.g., audio content presentation). For example, methods may include obtaining an indication of motion in a space; adjusting a presentation speed based on the indication of motion; and presenting a content item associated with a location in the space, wherein the content item is presented using the adjusted presentation speed.

BACKGROUND

Augmented reality applications allow a user to see a presentation of theworld augmented with or superimposed by computer-generated content. Thecontent may be graphical, textual, and/or audible. The presented worldmay be presented directly to the user, such as when the user is lookingthrough a display, and the imagery is applied to or projected on thedisplay. The world may also be presented indirectly, such as when a useris navigating previously captured images of the real world, rather thanthe world that is presently in front of the user.

A head mounted display (“HMD”) is a display device worn on or about thehead. HMDs usually incorporate some sort of near-to-eye optical systemto emit a light image within a few centimeters of the human eye. Singleeye displays are referred to as monocular HMDs while dual eye displaysare referred to as binocular HMDs. Some HMDs display only a computergenerated image (“CGI”), while other types of HMDs are capable ofsuperimposing CGI over a real-world view. This latter type of HMD canserve as the hardware platform for realizing augmented reality. Withaugmented reality the viewer's image of the world is augmented with anoverlaying CGI, also referred to as a heads-up display (“HUD”), sincethe user can view the CGI without taking their eyes off their forwardview of the world.

SUMMARY

This application relates to adaptation of presentation speed for contentitems associated with locations. Disclosed herein are aspects ofsystems, methods, and apparatuses for adapting presentation speed forcontent items associated with locations.

One aspect of the disclosed implementations is a system for audiopresentation. The system includes a motion sensor, a speaker, a memory,and a processor. The memory stores instructions executable by theprocessor to cause the system to: obtain, from the motion sensor, anindication of motion in a space; adjust a presentation speed based onthe indication of motion; and present, via the speaker, an audio contentassociated with a location in the space, wherein the audio content ispresented using the adjusted presentation speed.

Another aspect is a method for content presentation. The method includesobtaining an indication of motion in a space; adjusting a presentationspeed based on the indication of motion; and presenting a content itemassociated with a location in the space, wherein the content item ispresented using the adjusted presentation speed.

Another aspect is a system for content presentation. The system includesa memory and a processor. The memory stores instructions executable bythe processor to cause the system to: obtain an indication of motion ina space; adjust a presentation speed based on the indication of motion;and present a content item associated with a location in the space,wherein the content item is presented using the adjusted presentationspeed.

These and other aspects of the present disclosure are disclosed in thefollowing detailed description of the embodiments, the appended claimsand the accompanying figures.

BRIEF DESCRIPTION OF THE DRAWINGS

The description herein makes reference to the accompanying drawingswherein like reference numerals refer to like parts throughout theseveral views.

FIG. 1 is a diagram of an example of a space with locations associatedwith content items for presentation.

FIG. 2 is a block diagram of an example of a computing device configuredto adjust presentation speed of content items based on motion of a user.

FIG. 3 is a flowchart an example of a process for adapting presentationspeed of a content item associated with a location.

FIG. 4 is a flowchart an example of a process for presenting a contentitem associated with a location.

FIG. 5 is a flowchart an example of a process for adapting presentationspeed based on motion data for a user.

FIG. 6 is a flowchart an example of a process for adapting presentationspeed of a content item.

FIG. 7 is a flowchart an example of a process for adapting presentationspeed of a content item based on a gaze direction.

DETAILED DESCRIPTION

In an augmented reality (AR) or virtual reality (VR) setting, audiopresentation can be guided based on detected physical or virtuallocation. For example, the audio track may be changed as a person walksfrom one room to another as they walk around a museum to match thecontent of that new room. But walking pace varies from person to person,depending on many factors both physical and circumstantial (e.g., theyare in a hurry, they are not interested in the content of a particularroom, etc.). If an application is able to estimate the pace that aperson is traveling through the physical or virtual environment, it maybe used to change the pace of delivery of an accompanying audio track orother content item(s). If a user spends less time or walks briskly pasta particular exhibit, the presentation speed of audio content can beaccelerated or even stopped until the person returns to a more naturalwalking pace. There may be limits on how much faster the audio can bepresented and remain intelligible. To make the presentation of audiocontent sound more natural when it is accelerated from a defaultpresentation speed, pitch normalization processing may be applied to theaudio content.

The presentation speed for other types of content items (e.g., video orslideshow content) may also be adjusted based on an indication of motionof a user in a space (e.g., a real space or a virtual space). In someimplementations, the visual content is presented synchronously withaudio content and the presentation speed for all the content items maybe adjusted together.

Content items presented to a user may be associated with respectivelocations in a space. The user moving into proximity to a location maytrigger the initiation of the presentation of a content item associatedwith the location. The presentation speed for the content item may beadjusted at the start of the presentation and/or the presentation speedmay continue to be adjusted as the content item is presented. When apresentation speed is adjusted after the content item has startedplaying, the presentation speed may be updated gradually byinterpolating the presentation speed between a current value and anadjusted value in small increments over an interval of time to avoid anabrupt change in presentation speed that could be noticeable anddisruptive.

For example, the presentation speed for a content item may be adjustedbased on a ratio of time spent in proximity to one or more priorlocations visited by the user and durations of respective prior contentitems for those prior locations. The presentation speed for a contentitem may be adjusted within a limited range (e.g., between 1× and 2× adefault presentation speed for the content item). Additional informationabout the attention of a user, such as a gaze angle of the user, mayalso be used to adjust a presentation speed for content items (e.g.,including audio content).

Some implementations may provide advantages over prior augmented realityor virtual reality systems, such as tailoring content items to anindividual user's interests and behavioral patterns automatically. Someimplementations may streamline user interactions and make thoseinteractions faster.

FIG. 1 is a diagram of an example of a space 100 with locationsassociated with content items for presentation. A user 110 moves in thespace 100. The user 110 wears a wearable interface 120 that isconfigured to present content items (e.g., audio content, video content,or slideshow content) to the user 110. The space includes a firstlocation 130 with a first proximity zone 132 around it, a secondlocation 140 with a second proximity zone 142 around it, a thirdlocation 150 with a third proximity zone 152 around it, and a fourthlocation 160 with a fourth proximity zone 162 around it. One or moreexternal motion sensors 170 are also positioned in the space 100 and areconfigured to detect motion of the user 110 in the space 100.

For example, the space 100 may be in a museum and the locations (130,140, 150, and 160) may be associated with respective exhibits in themuseum. The locations may be associated with respective content items(e.g., audio content, video content, or slideshow content that expoundon a respective exhibit). A content item associated with one of thelocations (e.g., the first location 130, the second location 140, thethird location 150, or the fourth location 160) may be presented to theuser 110 via the wearable interface 120 when the user 110 is inproximity to the location. A presentation speed for the content item maybe adjusted based on an indication of motion of the user 110 in thespace 100.

The wearable interface 120 may include headphones or another type ofspeaker for presenting audio content. In some implementations, thewearable interface 120 includes a wearable display (e.g., an HMD)configured to display images to the user 110 for presenting videocontent, slideshow content, etc. The wearable interface 120 may includemotion sensors (e.g., accelerometers, gyroscopes, magnetometers, and/ora global positioning system receiver) for detecting motion of the user110 through the space 100. The wearable interface 120 may include an eyetracking sensor for detecting a gaze direction of the user 110. Forexample, the wearable interface 120 may include the computing device 200of FIG. 2.

The proximity zones (132, 142, 152, and 162) may be defined as circularareas with configured radii centered at respective locations (130, 140,150, and 162). For example, the radii determining the size of theproximity zones (132, 142, 152, and 162) may be configured by a curatorthat provides the content items associated with the respective locations(130, 140, 150, and 162).

The external motion sensors 170 may include one or more camerasconfigured to capture images of the user 110 as the user moves throughthe space 100. An estimate of motion of the user 110 in the space 100may be determined based on image data from one or more cameras of theexternal motion sensors 170. A presentation speed of a content itemassociated with a location (e.g., the second location 140) may beadjusted based on the estimate of motion of the user 110 in the space100. For example, a computing device configured to adjust thepresentation speed for the content item may receive image data from acamera of the external motion sensors 170. The image data may includeviews of the user 110 moving in the space 100. The computing device maydetermine an estimate of motion of the user 110 in the space 100 basedon the image data. This estimate of motion may in turn be used todetermine an adjustment to the presentation speed.

Consider a space with N exhibits respectively associated with locationsin the space (e.g., the first location 130, the second location 140, thethird location 150, and the fourth location 160 in the space 100). Theseexhibits can be notated by the index iϵ(0, . . . N−1). The space canspan a single room or multiple rooms. A location (e.g., the secondlocation 140) associated with an exhibit has position coordinates of(x_i, y_i). A proximity zone (e.g., the second proximity zone 142) maybe configured for the location as a circular region with radius r_icentered at the location's position coordinates (x_i, y_i).

A content item (e.g., an audio track) for exhibit i has a duration, d_i.The content item may be presented at a presentation speed, v_i (e.g.,v_i=1=>normal speed, v_i=2=>twice playback speed, etc.).

Let t_i be the time spent by the user 110 in a proximity zone of the ithexhibit/location. If the user 110 spends more time, t_i, in a proximityzone than the duration of the corresponding content item, d_i, one couldinfer that time was not an issue. However, if t_i, <d_i one can inferthat the visitor was not interested in this exhibit, or they got boredwith the presentation of the content item. Other cues may be used todifferentiate these cases. For example, a gaze direction of the user 110could be monitored to see if the user 110 is looking elsewhere. Forexample, the user 110 may be deemed to be interested in an exhibit,where they spend time reading an explanation placard of the exhibit. Insome scenarios, the presentation speeds for content items of currentand/or future exhibits may be increased in an attempt to retain theinterest of the user 110.

An example scheme for adjusting presentation speed of content items is:

-   -   For all exhibits visited so far where we determine that the user        110 is interested, calculate the proportion of the respective        content item (e.g., audio track) that they listened to,        P_iϵ(0,1).    -   Let P′ be the average of all P_i for all the exhibits visited so        far.    -   Determine a presentation speed for a content item of an exhibit        as follows:    -   If (P′<0.5) v_i=2.0    -   else v_i=1/P′        In this scheme, the presentation speed is capped 1.0<=v_i<=2.0        for audio since double presentation speed may be a sensible        upper limit for presentation speed to retain intelligibility.

In some implementations, a dampening mechanism may be used to graduallyapply adjustments into the presentation speed update to avoid irritatingabrupt changes in presentation speed to the user 110.

Other available sensory information may be utilized to inform theadjustment of the presentation speed of content items. For example,precise positions of the user 110 could be used to infer that otherpeople or objects are impeding a view of an exhibit at a location. Forexample, a relative position of the user and an exhibit explanationplacard together with viewer gaze direction can be used to infer whetherthey have read/are reading the information on the placard and use thisin the decision process.

This scheme is equally applicable in an AR scenario, a VR scenario, or areal-world scenario. The specific sensory information that is availablemay be different in these cases. In the VR world, positions are knownimplicitly whereas in the real-world position has to be sensed in someway.

FIG. 2 is a block diagram of an example of a computing device 200configured to adjust presentation speed of content items based on motionof a user. The computing device may include or be part of a system forcontent presentation (e.g., audio presentation). The computing device200 can be in the form of a computing system including multiplecomputing devices, or in the form of a single computing device, forexample, a VR headset, a mobile phone, a tablet computer, a laptopcomputer, a notebook computer, a desktop computer, and the like.

A CPU 202 in the computing device 200 can be a central processing unit.Alternatively, the CPU 202 can be any other type of device, or multipledevices, capable of manipulating or processing information now-existingor hereafter developed. Although the disclosed implementations can bepracticed with a single processor as shown, e.g., the CPU 202,advantages in speed and efficiency can be achieved using more than oneprocessor.

A memory 204 in the computing device 200 can be a read-only memory (ROM)device or a random access memory (RAM) device in an implementation. Anyother suitable type of storage device can be used as the memory 204. Thememory 204 can include code and data 206 that is accessed by the CPU 202using a bus 212. The memory 204 can further include an operating system208 and application programs 210, the application programs 210 includingat least one program that permits the CPU 202 to perform the methodsdescribed here. For example, the application programs 210 can includeapplications 1 through N, which further include a content itempresentation application that performs the methods described here (e.g.,implementing the process 300 of FIG. 3).

The computing device 200 can also include one or more output devices,such as a display 218. The display 218 may be, in one example, a touchsensitive display that combines a display with a touch sensitive elementthat is operable to sense touch inputs. The display 218 can be coupledto the CPU 202 via the bus 212. Other output devices that permit a userto program or otherwise use the computing device 200 can be provided inaddition to or as an alternative to the display 218. When the outputdevice is or includes a display, the display can be implemented invarious ways, including by a liquid crystal display (LCD), a cathode-raytube (CRT) display or light emitting diode (LED) display, such as anorganic LED (OLED) display. In some implementations, the display 218 isa wearable display (e.g., an HMD integrated in glasses or goggles).

The computing device 200 can also include or be in communication with amotion sensor 220, for example an inertial measurement unit, or anyother motion sensor 220 now existing or hereafter developed that candetect motion of a user in a space. The motion sensor 220 can beconfigured to be worn by a user operating the computing device 200. Forexample, the motion sensor 220 may include accelerometers, gyroscopes,magnetometers, and/or a global positioning system receiver.

The computing device 200 can also include or be in communication with aspeaker 222, for example headphones, or any other sound-making devicenow existing or hereafter developed that can generate sounds in responseto signals from the computing device 200. The speaker 222 can bepositioned such that it is directed toward a user operating thecomputing device 200 and can be configured to present audio content(e.g., music or an audio track) associated with a location when the useris in proximity to the location. For example, video content may bepresented, via the display 218 (e.g., a wearable display), synchronouslywith audio content presented via the speaker 222.

The computing device 200 can also include or be in communication with aneye tracking sensor 226, for example an optical sensor, or any other eyetracking sensor 226 now existing or hereafter developed that can detecteye orientation or gaze direction. For example, the eye tracking sensor226 may include a video camera that detects light (e.g., infrared light)reflected from an eye and outputs image data. The image data may beanalyzed to determine a relative orientation of the eye. In someimplementations, the eye tracking sensor 226 may use electric potentialsmeasured with electrodes placed around the eyes. Electric signal thatcan be derived using two pairs of contact electrodes placed on the skinaround one eye is called an electrooculogram (EOG). For example, anindication of gaze direction for a user may be determined based on anEOG and data describing the position and orientation of a user's head ina space. An indication of gaze direction for a user may be obtained fromthe eye tracking sensor 226 and a presentation speed for a content itemmay be determined based in part on the indication of gaze direction.

The computing device 200 can also include a communications interface230, which may enable communications with a content server and/orexternal sensors (e.g., the external motion sensors 170). For example,the communications interface 230 may be used to receive image data froma camera. The image data may include views of a user moving in a space.For example, the communications interface 230 may be used to receivecontent items (e.g., audio content, video content, and/or slideshowcontent) from a content server for presentation to a user. For example,the communications interface 230 may include a wired interface, such asa high-definition multimedia interface (HDMI), a universal serial bus(USB) interface, or a FireWire interface. For example, thecommunications interface 230 may include a wireless interface, such as aBluetooth interface, a ZigBee interface, and/or a Wi-Fi interface.

Although FIG. 2 depicts the CPU 202 and the memory 204 of the computingdevice 200 as being integrated into a single unit, other configurationscan be utilized. The operations of the CPU 202 can be distributed acrossmultiple machines (each machine having one or more processors) that canbe coupled directly or across a local area or other network. The memory204 can be distributed across multiple machines such as a network-basedmemory or memory in multiple machines performing the operations of thecomputing device 200. Although depicted here as a single bus, the bus212 of the computing device 200 can be composed of multiple buses.Further, secondary storage can be directly coupled to the components ofthe computing device 200 or can be accessed via a network and cancomprise a single integrated unit such as a memory card or multipleunits such as multiple memory cards. The computing device 200 can thusbe implemented in a wide variety of configurations.

FIG. 3 is a flowchart an example of a process 300 for adaptingpresentation speed of a content item associated with a location. Theprocess 300 includes obtaining 310 an indication of motion in a space;adjusting 320 a presentation speed based on the indication of motion;and presenting 330 a content item associated with a location in thespace, wherein the content item is presented using the adjustedpresentation speed. For example, the process 300 may be implemented bythe wearable interface 120 of FIG. 1. For example, the process 300 maybe implemented by the computing device 200 of FIG. 2.

The process 300 includes obtaining 310 an indication of motion in aspace. In some implementations, the space may be a real space (e.g., aspace in a museum that includes exhibits). For example, the indicationof motion may be based on data from motion sensors (e.g.,accelerometers, gyroscopes, magnetometers, and/or a global positioningsystem receiver) worn by a user as the user moves through the space. Insome implementations, the space may be a virtual space (e.g., that usermoves through using a virtual reality application and controlinterface). For example, the indication of motion may be based oncontrol signals from a user detected with a virtual reality controlinterface (e.g., including motion sensors worn by the user, buttons, amouse, and/or a joystick). The indication of motion may include aposition, an orientation, and/or a velocity in the space. In someimplementations, the indication of motion may include specification of apath through the space traversed by the user.

The process 300 includes adjusting 320 a presentation speed based on theindication of motion. In some implementations, the presentation speedmay be adjusted 320 to present a content item faster when the user ismoving through the space faster than expected. For example, the when theaverage velocity of the user in the space over a time interval or as theuser moves between two locations is greater than an expected averagevelocity, the presentation speed may be increased by factor proportionalto the excess average velocity. In some implementations, thepresentation speed may be adjusted 320 based on analysis of the amountof time the user has spent in proximity to other locations associatedwith content items. For example, the presentation speed may be adjusted320 by implementing the process 500 of FIG. 5. Adjusting 320 thepresentation speed may include checking that the adjusted presentationspeed is less than a limit (e.g., 2× or 3× a default presentation speedfor the content item). Enforcing a limit on the presentation speed mayserve to preserve intelligibility of the content item.

The process 300 includes presenting 330 a content item associated with alocation in the space. The content item may be presented 330 using theadjusted presentation speed. The content item may include at least oneof audio content, video content, and slideshow content. For example,content item may include audio content and may be presented 330 byplaying the audio content with a speaker (e.g., the speaker 222). Whenaudio content is presented 330 using a presentation speed higher thanthe default presentation speed for the content item (e.g., playback at1.5× speed), pitch normalization processing may be applied to the audiocontent to mitigate distortion of voices in the audio content. Forexample, content item may include video content and/or slideshow contentand may be presented 330 by displaying the video content and/orslideshow content on a display (e.g., the display 218). In someimplementations, video content is presented 330, via a wearable display(e.g., an HMD), synchronously with audio content. For example, thecontent item may be presented 330 when the user is in proximity to thelocation by using the process 400 of FIG. 4.

FIG. 4 is a flowchart an example of a process 400 for presenting acontent item associated with a location. The process 400 includesdetermining 410 a user position in the space; checking 420 whether theuser position is in proximity to the location; and initiating 430presentation of the content item based on the user position enteringproximity to the location. For example, the process 400 may beimplemented by the wearable interface 120 of FIG. 1. For example, theprocess 400 may be implemented by the computing device 200 of FIG. 2.

The process 400 includes determining 410 a user position in the space.For example, the user position may be determined 410 based oncoordinates from a global positioning system. In some implementations,the user position in the space may be determined 410 by tracking theevolution of the user's position from a known starting point based ondata from motion sensor(s) worn by the user. For example, accelerometerand gyroscope measurements may be integrated to track the evolution of auser position. In a virtual space, the position of the user may bedetermined 410 by retrieving a position data structure from a virtualreality application being used by the user.

The process 400 includes checking 420 whether the user position is inproximity to a location. For example, checking 420 whether the userposition is in proximity to the location may include determining adistance between the user position and the location. If the distance isbelow a threshold that has been configured for the location (e.g., 1meter, 5 meters, or 10 meters), then the user is determined to be inproximity to the location. Checking 420 whether the user position is inproximity to the location may include determining whether the userposition is within a proximity zone configured for the location. Forexample, the proximity zone (e.g., the second proximity zone 142) for alocation (e.g., the second location 140) may be configured as a circlearound the center point of the location. Other shapes may be configuredfor proximity zones. For example, a proximity zone may be configured tomatch the shape of a room. Checking 420 whether the user position is ina proximity zone for a location may include testing whether thecoordinates of the user position are a member of the set of coordinatesdefining the proximity zone.

The process 400 includes initiating 430 presentation of the content itembased on the user position entering proximity to the location. When theuser position transitions from outside to inside of proximity to thelocation, presentation of the content item associated with the locationmay be initiated 430. The content item may be presented using apresentation speed that has been adjusted (e.g., using the process 400)based on an indication of motion of the user in the space. Thepresentation of the content item may continue until entire content itemis presented or until the user position exits proximity to the location.

In some implementations, the presentation speed may continue to beadjusted (e.g., using the process 400) during the ongoing presentationof the content item. For example, the presentation speed may continue tobe adjusted based on changes in the average velocity of the user over asliding time window or based on other information about the user'sinteraction with something (e.g., an exhibit) at the location, such anestimate of a gaze angel of the user. When a presentation speed isadjusted during an ongoing presentation of a content item the adjustmentmay be implemented through a dampening mechanism to avoid abrupt changesthat in the presentation speed. For example, the presentation speed maybe updated to an adjusted value in a series of small steps byinterpolating the presentation speed from a current value to theadjusted value over an interval of time.

FIG. 5 is a flowchart an example of a process 500 for adaptingpresentation speed based on motion data for a user. The process 500includes determining 510 a time period that a user was in proximity of aprior location in the space, wherein the prior location is associatedwith a prior content item with a duration; determining 520 a ratio ofthe time period to the duration; updating 530 an average ratio based onthe ratio; and determining 540 the presentation speed based on theratio. For example, the process 500 may be implemented by the wearableinterface 120 of FIG. 1. For example, the process 500 may be implementedby the computing device 200 of FIG. 2.

The process 500 includes determining 510 a time period that a user wasin proximity of a prior location in the space. The prior location may beassociated with a prior content item with a duration. For example,referring to FIG. 1, the user 110 may have previously moved through thethird proximity zone 152 of the third location 150 and through thefourth proximity zone 162 of the fourth location 160, before enteringthe second proximity zone 142 of the second location 140. A time historyof the user positions of user 110 may indicate that the user 110 was inproximity of the third location 150 (e.g., in the third proximity zone152) for a time period, t_3, and was in proximity of the fourth location160 (e.g., in the fourth proximity zone 162) for a time period, t_4. Inthis scenario, the time history of the user positions of the user 110may be analyzed to determine 510 the time period t_4 and/or the timeperiod t_3. For example, the third location 150 may be associated with aprior content item, CI_3, of duration d_3 and the fourth location 160may be associated with a prior content item, CI_4, of duration d_4.

The process 500 includes determining 520 a ratio of the time period tothe duration. For example, a ratio may be determined 520 for the latestprior location. In the above scenario, a ratio, R_4, for the fourthlocation 160 may be determined as R_4=t_4/d_4. In some implementations,ratios may also be determined 520 for earlier prior locations. In theabove scenario, a ratio, R_3, for the third location 150 may bedetermined as R_3=t_3/d_3.

The process 500 includes updating 530 an average ratio based on theratio. For example, an average ratio, R_avg, for the user may be updated530 based on the ratio for the latest prior location. In the abovescenario, latest ratio, R_4, may be used to update 530 the averageratio, R_avg, For example, R_avg may be updated 530 asR_avg[n+1]=α*R_4+(1−α)*R_avg[n], where 0<α<1. In some implementations, alist of ratios for prior locations may be maintained and an averageratio may be updated 530 based on all available ratios for priorlocations in the list. In the above scenario, the average ratio may beupdated as R_avg=0.5*R_3+0.5*R_4.

The process 500 includes determining 540 the presentation speed based onthe ratio. For example, the presentation speed may be determined 540 byscaling a default presentation speed for the content item by a factorthat is inversely proportional to the ratio. In some implementations,the presentation speed scale factor is determined 540 as inverselyproportional to the ratio for the latest prior location (e.g., R_4 inthe above scenario). In some implementations, the presentation speedscale factor is determined 540 as inversely proportional to an averageratio prior locations (e.g., R_avg in the above scenario), which in turndepends on the latest ratio. For example, the presentation speed for thecurrent content item may be determined 540 to be inversely proportionalto the average ratio within a range between a minimum presentation speedand a maximum presentation speed. For example, the presentation speedfor the current content item may be determined 540 by implementing theprocess 600 of FIG. 6.

FIG. 6 is a flowchart an example of a process 600 for adaptingpresentation speed of a content item. The process 600 includesdetermining the presentation speed to be inversely proportional to theratio within a range between a minimum presentation speed and a maximumpresentation speed. For example, the process 600 may be implemented bythe wearable interface 120 of FIG. 1. For example, the process 600 maybe implemented by the computing device 200 of FIG. 2.

The process 600 includes determining 610 a ratio of attention to contentduration(s). For example, the ratio may be determined 610 as the ratioof linger time t_4 to content duration d_4 for the last prior location(e.g., as described in relation to operation 520). For example, theratio may be determined 610 as an average of ratios for prior locations(e.g., as described in relation to operation 530).

The process 600 includes checking 615 whether the ratio is below aminimum threshold (e.g., 0.5), and if it is below the threshold, setting620 the presentation speed to a maximum speed (e.g., 2× the defaultpresentation speed for the content item associated with the currentlocation). Otherwise, the ratio is checked 625 to determine whether theratio is above a maximum threshold (e.g., 1), and if it is above thethreshold, setting 630 the presentation speed to a minimum speed (e.g.,the default presentation speed for the content item associated with thecurrent location).

If the (at 615 and 625) the ratio is between the minimum and maximumthresholds, then the presentation speed is determined 632 as inverselyproportional to the ratio. For example, the presentation speed may bedetermined 632 as v_i=v_0_i/R, where v_i is the presentation speed forthe content item of the current location, v_0_i is a defaultpresentation speed for the content item of the current location, and Ris the ratio.

FIG. 7 is a flowchart an example of a process 700 for adaptingpresentation speed of a content item based on a gaze direction. Theprocess 700 includes obtaining 710 an indication of gaze direction for auser; and determining 720 the presentation speed based in part on theindication of gaze direction. For example, the process 700 may beimplemented by the wearable interface 120 of FIG. 1. For example, theprocess 700 may be implemented by the computing device 200 of FIG. 2.

The process 700 includes obtaining 710 an indication of gaze directionfor a user. For example, the indication of gaze direction may beobtained 710 by receiving an estimate of gaze direction from an eyetracker (e.g., including the eye tracking sensor 226) in a device wornby the user. In some implementations the indication of gaze directionmay be obtained 710 by combining eye orientation data from an eyetracking sensor (e.g., the eye tracking sensor 226) with user headorientation data from a motion sensor (e.g., the motion sensor 220) wornby the user. This orientation data may be combined to obtain 710 a gazedirection expressed in world coordinates of the space. The indication ofgaze direction may reflect whether the user is looking in the directionof an object (e.g., a placard for an exhibit or central object at thelocation) in the proximity of the current location.

The process 700 includes determining 720 the presentation speed based inpart on the indication of gaze direction. A ray in the indicated gazedirection from the user position in the space may be checked forintersection with known objects of interest at or near the location. Forexample, if the indicated gaze direction intersects with a placard foran exhibit associated with the current location, then a presentationspeed for a content item associated with the location may be reduced.For example, if the indicated gaze direction points away from thelocation without intersecting with objects of interest at or near thelocation, then a presentation speed for a content item associated withthe location may be increased. In some implementations, the presentationspeed for a content item that is already being presented may begradually reduced or increased (e.g., by interpolating between a currentpresentation speed and a new presentation speed that has been determined720.

What is claimed is:
 1. A system for audio presentation, comprising: amotion sensor; a speaker; a memory; and a processor, wherein the memorystores instructions executable by the processor to cause the system to:identify audio content associated with a location in a space, the audiocontent having a primary presentation speed; obtain, from the motionsensor, an indication of a rate of motion in the space of a userrelative to the location; determine an adjusted presentation speed basedon the rate of motion and the primary presentation speed; and present,via the speaker, the audio content to the user in accordance with theadjusted presentation speed.
 2. The system of claim 1, comprising awearable display and wherein the memory stores instructions executableby the processor to cause the system to: present, via the wearabledisplay, video content synchronously with the audio content.
 3. Thesystem of claim 1, comprising an eye tracking sensor and wherein thememory stores instructions executable by the processor to cause thesystem to: obtain, form the eye tracking sensor, an indication of gazedirection for a user; and wherein the adjusted presentation speed isdetermined based in part on the indication of gaze direction.
 4. Thesystem of claim 1, wherein the memory stores instructions executable bythe processor to cause the system to: determine a user position in thespace; check whether the user position is in proximity to the location;and initiate presentation of the audio content in response to adetermination that a proximity of the user to the location changes fromgreater than a defined proximity threshold to within the definedproximity threshold.
 5. The system of claim 1, wherein the instructionsexecutable by the processor to cause the system to: determine a timeperiod of proximity between the user and a prior location in the space,wherein the prior location is associated with a prior content item,wherein the prior content item has a duration; determine a ratio of thetime period to the duration; and determine the adjusted presentationspeed based on the ratio.
 6. The system of claim 5, wherein theinstructions executable by the processor to cause the system to:determine the adjusted presentation speed to be inversely proportionalto the ratio within a range between a minimum presentation speed and amaximum presentation speed.
 7. A system for content presentation,comprising: a memory; and a processor, wherein the memory storesinstructions executable by the processor to cause the system to:identify a content item associated with a location in a space, thecontent item having a primary presentation speed; obtain an indicationof a rate of motion in the space of a user relative to the location;determine an adjusted presentation speed based on the rate of motion andthe primary presentation speed; and present the content item to the userin accordance with the adjusted presentation speed.
 8. The system ofclaim 7, wherein the instructions include instructions executable by theprocessor to cause the system to: receive motion data from a motionsensor; and obtain the indication of the rate of motion based on themotion data.
 9. The system of claim 7, wherein the instructions includeinstructions executable by the processor to cause the system to: receiveimage data from a camera, wherein the image data includes views of auser moving in the space; and obtain the indication of the rate ofmotion based on received image data.
 10. The system of claim 7, whereinthe instructions include instructions executable by the processor tocause the system to: determine the adjusted presentation speed such thatthe adjusted presentation speed is less than a limit.
 11. The system ofclaim 7, wherein the memory stores instructions executable by theprocessor to cause the system to: determine a user position in thespace; check whether the user position is in proximity to the location;and initiate presentation of the content item in response to adetermination that a proximity of the user to the location changes fromgreater than a defined proximity threshold to within the definedproximity threshold.
 12. The system of claim 7, wherein the instructionsinclude instructions executable by the processor to cause the system to:determine a time period of proximity between the user and a priorlocation in the space, wherein the prior location is associated with aprior content item, wherein the prior content item has a duration;determine a ratio of the time period to the duration; and determine theadjusted presentation speed based on the ratio.
 13. The system of claim12, wherein the instructions include instructions executable by theprocessor to cause the system to: determine the adjusted presentationspeed to be inversely proportional to the ratio within a range between aminimum presentation speed and a maximum presentation speed.
 14. Thesystem of claim 7, wherein the space is a virtual space.
 15. The systemof claim 7, wherein the space is a real space.
 16. The system of claim7, wherein the content item includes at least one of audio content,video content, or slideshow content.
 17. The system of claim 7, whereinthe memory stores instructions executable by the processor to cause thesystem to: obtain an indication of gaze direction for the user; andwherein the adjusted presentation speed is determined based in part onthe indication of gaze direction.
 18. A method for content presentationcomprising: identifying a content item associated with a location in aspace, the content item having a primary presentation speed; obtainingan indication of a rate of motion in a the space of a user relative tothe location; determining, by a processor an adjusted presentation speedbased on the rate of motion and the primary presentation speed; andpresenting the content item to the user in accordance with the adjustedpresentation speed.
 19. The method of claim 18, comprising: determininga user position in the space; checking whether the user position is inproximity to the location; and initiating presentation of the contentitem in response to a determination that a proximity of the user to thelocation changes from greater than a defined proximity threshold towithin the defined proximity threshold.
 20. The method of claim 18,wherein determining the adjusted presentation speed comprises:determining a time period of proximity between the user and a priorlocation in the space, wherein the prior location is associated with aprior content item, wherein the prior content item has a duration;determining a ratio of the time period to the duration; and determiningthe adjusted presentation speed based on the ratio.